home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 010 / blit.arc / HILBERTC.C < prev    next >
Encoding:
Text File  |  1985-06-10  |  990 b   |  42 lines

  1. /*
  2.  * NAME:         C
  3.  *
  4.  * DESCRIPTION: RECURSIVE PROCEDURE USED TO DRAW HILBERT CURVES.
  5.  *
  6.  * SYNOPSIS:     C (I, H, OLD, CUR)
  7.  *              INT      I;
  8.  *              INT      H;
  9.  *              STRUCT POINT    *CUR;
  10.  *              STRUCT POINT    *OLD;
  11.  *
  12.  * GLOBALS:      NONE.
  13.  *
  14.  * CALLS:        B        (HILBERT.C)
  15.  *              DO_PLOT   (HILBERT.C)
  16.  *              C         (HILBERT.C)
  17.  *              D         (HILBERT.C)
  18.  *
  19.  * CALLED BY:    B          (HILBERT.C)
  20.  *              C           (HILBERT.C)
  21.  *              D           (HILBERT.C)
  22.  */
  23. C (I, H, OLD, CUR)
  24. INT    I;
  25. INT    H;
  26. STRUCT POINT  *CUR;
  27. STRUCT POINT  *OLD;
  28. {
  29.    IF (I > 0) {
  30.         B (I - 1, H, OLD, CUR);
  31.        CUR -> X += H;
  32.        DO_PLOT (OLD, CUR);
  33.         C (I - 1, H, OLD, CUR);
  34.        CUR -> Y += H;
  35.        DO_PLOT (OLD, CUR);
  36.         C (I - 1, H, OLD, CUR);
  37.        CUR -> X -= H;
  38.        DO_PLOT (OLD, CUR);
  39.         D (I - 1, H, OLD, CUR);
  40.    }
  41. }
  42.